# SPDX-License-Identifier: GPL-2.0
# ==========================================================================
# bin rule
# ==========================================================================

########################################
# Always build                         #
########################################

# bin-always-y += foo
# ... is a shorthand for
# bin += foo
# always-y  += foo
bin 				+= $(bin-always-y)
bin-always 			+= $(bin-always-y)

########################################
# Sort files                           #
########################################

bin	:= $(sort $(bin))

########################################
# Filter files                         #
########################################

bin-objs	:= $(sort $(foreach m,$(bin),$($(m)-obj-y)))

########################################
# Add path                             #
########################################

bin			:= $(addprefix $(obj)/,$(bin))
bin-objs	:= $(addprefix $(obj)/,$(bin-objs))
bin-always 	:= $(addprefix $(obj)/,$(bin-always))

########################################
# Always rule                          #
########################################

always-y	+= $(bin-always)

########################################
# clean rule                           #
########################################

clean-files += $(bin)